<?
session_start();
$ruta_raiz = "..";

if(!isset($_SESSION['dependencia']))	include "$ruta_raiz/rec_session.php";

include_once "$ruta_raiz/include/db/ConnectionHandler.php";
include_once("$ruta_raiz/include/combos.php");

if (!$db)	$db = new ConnectionHandler($ruta_raiz);
//if (!defined('ADODB_FETCH_ASSOC'))	define('ADODB_FETCH_ASSOC',2);
$ADODB_FETCH_MODE = ADODB_FETCH_ASSOC;
//$db->conn->debug=true;

/**
 * Retorna la cantidad de bytes de una expresion como 7M, 4G u 8K.
 *
 * @param char $var
 * @return numeric
 */
function return_bytes($val) {
	$val = trim($val);
	$ultimo = strtolower($val{strlen($val)-1});
	switch($ultimo)
	{	// El modificador 'G' se encuentra disponible desde PHP 5.1.0
		case 'g':	$val *= 1024;
		case 'm':	$val *= 1024;
		case 'k':	$val *= 1024;
	}
	return $val;
}

?>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Generacion de Sobres</title>
<link rel="stylesheet" href="../estilos/orfeo.css">
</head>
<body>
<?php
/**
 * Combinar la plantilla con el csv.
 */
if ( isset($_FILES['archivoOdt']['tmp_name']) ) {


	$hora = date("H")."_".date("i")."_".date("s");
	// var que almacena el dia de la fecha
	$ddate = date('d');
	// var que almacena el mes de la fecha
	$mdate = date('m');
	// var que almacena el a�o de la fecha
	$adate = date('Y');
	// var que almacena  la fecha formateada
	$fecha = $adate."_".$mdate."_".$ddate."_".$hora;

	$file_odt = $_FILES['archivoOdt']['tmp_name'];
	$file_csv = $_FILES['archivoCsv']['tmp_name'];

	$upload_dir = "../bodega/tmp/workDir/";
	$file_tmp_odt = $upload_dir . "$fecha.odt";
	$file_tmp_csv = $upload_dir . "$fecha.csv";

	if( !move_uploaded_file($file_odt, $file_tmp_odt) ) {
		echo "Error al copiar Plantilla: $file_odt en $file_tmp_odt";

	} elseif ( !move_uploaded_file($file_csv, $file_tmp_csv) ) {
		echo "Error al copiar CSV: $file_csv en $file_tmp_csv";

	} else {

		/**
		 * Generar la combinacion de sobres.
		 */
		require_once '../include/csv/CsvFile.class.php';
		require_once '../include/odtphp/library/odf_orfeo.php';
		/**
		 * Clase para la manipulacion de archivos ODT.
		 * @var Odf_Orfeo
		 */
		$odf = new Odf_Orfeo($file_tmp_odt);

		/**
		 * Clase para la manipulacion de archivos CSV.
		 * @var CsvFile
		 */
		$csv = new CsvFile($file_tmp_csv);
		$headers = $csv->firstRowAsHeaders(true);
		$num_headers = $csv->getNumHeaders();
		$rows = $csv->getAllRows();
		$num_rows = $csv->getNumRows();

		try {

			/**
			 * Por cada registro del csv.
			 */
			for( $i = 0; $i < $num_rows; $i++) {
				$data = $rows[$i];

				/**
				 * Por cada variable (cabecera).
				 */
				for ($j = 0; $j < $num_headers; $j++) {
					$odf->setVars( str_replace("*", "", $headers[$j]), $data[$j]);
				}
				/**
				 * No insertar pagina en el ultimo registro.
				 */
				if ( $i != ($num_rows - 1) ) {
					$odf->duplicateBody();
				}
			}
			$odf->saveToDisk($upload_dir. "sobres_$fecha.odt");

			?>
			<table width="92%" align="center" border="0" cellpadding="0" cellspacing="5" class="borde_tab">
				<tr align="center">
					<td height="25" colspan="2" class="titulos4">GENERAR SOBRES</td>
				</tr>
				<tr align="center" class="titulos2">
					<td class="titulos2">
						Se a generado correctamente el archivo con los sobres,
						puede descargarlo haciendo click en el boton de de la parte inferior.
					</td>
				</tr>
				<tr align="center">
					<td height="30">
						<a href="<?php echo $upload_dir. "sobres_$fecha.odt"; ?>" class="botones" style="padding: 3px 3px 2px 3px; text-decoration: none;">Descargar Sobres</a>
					</td>
				</tr>
				</table>
			<?php

		} catch (Exception $e) {
			echo $e->getMessage();
		}
	}
} else {
	?>
	<form name="formArchivos" action="paramGenerarSobres.php" method="post" enctype="multipart/form-data">
	<input type="hidden" name="MAX_FILE_SIZE" value="<?php echo return_bytes(ini_get('upload_max_filesize')); ?>">

	<table width="31%" align="center" border="0" cellpadding="0"
		cellspacing="5" class="borde_tab">
		<tr align="center">
			<td height="25" colspan="2" class="titulos4">GENERAR SOBRES</td>
		</tr>
		<tr align="center">
			<td width="16%" class="titulos2">PLANTILLA</td>
			<td width="84%" height="30" class="listado2">
				<input name="archivoOdt" type="file" value="" class="tex_area" id="archivoOdt"></td>
		</tr>
		<tr align="center">
			<td class="titulos2">CSV</td>
			<td height="30" class="listado2"><input name="archivoCsv" type="file" class="tex_area" id="archivoCsv" value=""></td>
		</tr>
		<tr align="center">
			<td height="30" colspan="2" class="celdaGris"><span class="celdaGris">
			<span class="e_texto1"> <input type="submit" class="botones"
				value="Combinar"> </span> </span></td>
		</tr>
	</table>
	</form>
<?php
}
?>
</body>
</html>
